package com.lwj.service.configuration;

import com.lwj.dto.configuration.*;
import com.lwj.vo.PageBean;
import com.lwj.vo.configuration.DepartmentRoleMenuVo;
import com.lwj.vo.configuration.PermissionCheckVo;
import com.lwj.vo.configuration.RoleVo;
import com.lwj.vo.configuration.UserRoleVo;
import com.lwj.vo.system.MenuVo;

import java.util.List;

public interface PermissionService {
    PageBean<RoleVo> roleList(RoleListDto dto);

    String roleSave(DepartmentRoleDto dto);

    PageBean<UserRoleVo> getUserByRole(UserRoleListDto dto);

    List<DepartmentRoleMenuVo> menuTreeByRoleId(String departmentRoleId);

    void addUserToRole(UserRoleDto dto);

    void deleteUserRole(String departmentRoleId, String empId);

    void savePermission(DepartmentRoleMenuDto dto);

    PermissionCheckVo permissionCheck(String departmentId);

    PermissionCheckVo checkForList(String departmentId);

    void initAdminPermission(String menuId);

    PermissionCheckVo getPermissionCheckVo();
    void initPermissionCheckVo(String code );

    void removePermissionCheckVo();

}
